{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# SOLT Calibration Standards Creation"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Introduction\n",
"\n",
"In scikit-rf, a calibration standard is treated just as a regular one-port or\n",
"two-port `skrf.Network`, defined by its full S-parameters. It can represent\n",
"reflection, transmission, load, and even arbitrary-impedance standards. Since\n",
"no additional errors are introduced in circuit modeling and fitting, this\n",
"approach allows the highest calibration accuracy, and is known as a\n",
"*data-based standard* in the terminology of VNA vendors.\n",
"\n",
"However, VNA calibration standards are traditionally defined using a circuit\n",
"model with fitted coefficients. Since data-based standards are often offered\n",
"as premium products, many model-based calibration kits are still\n",
"being used and manufactured (even at 50 GHz [[1](SOLT%20Calibration%20Standards%20Creation.html#ref1)]).\n",
"This necessitates the creation of their network models before they can be used\n",
"in scikit-rf's calibration routines.\n",
"\n",
"This example explains network creation from coefficients given in both the\n",
"HP-Agilent-Keysight format and the Rohde & Schwarz / Anritsu format. Both\n",
"are essentially the same circuit model, but the latter format uses different\n",
"units of measurement for an offset transmission line.\n",
"\n",
"Calculated responses for Keysight 85032F (Type-N plug), Keysight 85033E\n",
"(3.5 mm plug), generic flush standards (SMA plugs), and Maury Microwave\n",
"8050CK10 (3.5 mm plug) are also plotted in this document as examples.\n",
"\n",
".. note::\n",
"Only coaxial standards are covered by this guide. The calculation is different\n",
"for waveguides. In particular, the scaling by $\\sqrt{\\text{GHz}}$ for coaxial\n",
"lines cannot be applied to waveguides because loss is also a function of their\n",
"physical dimensions, with significantly more complicated formulas. Do you have\n",
"waveguide experience? If so, you can help by\n",
"[contributing](../../contributing/index.rst#examples-and-tutorials) to the doc.\n",
"\n",
"## Alternatives to scikit-rf Modeling\n",
"\n",
"Before we begin, it's worth pointing out some alternatives.\n",
"\n",
"In scikit-rf, you are able to use any existing standard definition by\n",
"its S-parameters. If you already have your standard defined as a network\n",
"in other tools (e.g. in your favorite circuit simulator, or actual\n",
"measurements results), you can simply export the S-parameters to Touchstone\n",
"files for use in scikit-rf. Similarly, if you're already using a data-based\n",
"calibration standard, it should be possible to use its data directly. The\n",
"S-parameters may be stored in device-specific file formats, consult your\n",
"vendor about whether they can be exported as a Touchstone file.\n",
"\n",
"As a special case, if *flush* (zero-length) standards are used - meaning that the\n",
"standards sit right at the connector's reference plane without extended bodies -\n",
"sometimes one can assume the calibration standards are ideal for non-critical\n",
"measurements. In scikit-rf, one can create ideal responses conveniently by defining\n",
"an ideal transmission line and calling the `short()`, `open()`, `match()`,\n",
"and `thru()` methods (explained in the [Preparation](#preparation) section).\n",
"\n",
".. important::\n",
" Ideal assumptions are only approximately valid for *flush* standards.\n",
" Most lab-grade standards are *offset* standards, always use these standards\n",
" with the correct definitions entered. They have additional\n",
" electrical delays from their extended bodies, phase errors would be\n",
" unacceptably large under ideal assumptions. Using a *flush* standard behind\n",
" a *Thru* adapter creates the same phase deviations. See below for the\n",
" distinction between *flush* and *offset* standards. \n",
"\n",
"## HP-Agilent-Keysight Coefficient Format\n",
"\n",
"After the necessary background is introduced, let's begin.\n",
"\n",
"For the purpose of this guide, we're going to model the Keysight 85032F,\n",
"Type-N, 50 Ω, DC to 9 GHz calibration kit (plug), with the following\n",
"coefficients.\n",
"\n",
"| Parameter | Unit | Open | Short | Load | Thru |\n",
"| --------------- | --------------------------- | --------- | --------- | ------- | -------- |\n",
"| $\\text{C}_0$ | $10^{-15} \\text{ F}$ | 89.939 | | | |\n",
"| $\\text{C}_1$ | $10^{-27} \\text{ F/Hz}$ | 2536.800 | | | |\n",
"| $\\text{C}_2$ | $10^{-36} \\text{ F/Hz}^2$ | -264.990 | | | |\n",
"| $\\text{C}_3$ | $10^{-45} \\text{ F/Hz}^3$ | 13.400 | | | |\n",
"| $\\text{L}_0$ | $10^{-12} \\text{ H}$ | | 3.3998 | | |\n",
"| $\\text{L}_1$ | $10^{-24} \\text{ H/Hz}$ | | -496.4808 | | |\n",
"| $\\text{L}_2$ | $10^{-33} \\text{ H/Hz}^2$ | | 34.8314 | | |\n",
"| $\\text{L}_3$ | $10^{-42} \\text{ H/Hz}^3$ | | -0.7847 | | |\n",
"| Resistance | $\\Omega$ | | | 50 | |\n",
"| Offset Delay | ps | 40.856 | 45.955 | 0 | 0 |\n",
"| Offset Loss | $\\text{G}\\Omega$ / s | 0.93 | 1.087 | 0 | 0 |\n",
"| Offset $Z_0$ | $\\Omega$ | 50 | 49.992 | 50 | 50 |\n",
"| Reference $Z_0$ | $\\Omega$ | 50 | 50 | 50 | 50 |"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Circuit Model\n",
"\n",
"Before we start creating their network definitions, we first need to know\n",
"the underlying circuit model and the meaning of these coefficients.\n",
"As this schematic shows, this is the HP-Agilent-Keysight model for\n",
"a calibration standard.\n",
"\n",
"\n",
"
\n",
"
\n",
"\n",
"